package com.correo.controladores.server.event;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;

import com.correo.database.beans.CasillaCorreoBean;
import com.correo.database.beans.OfficeBean;
import com.correo.database.beans.UserBean;
import com.correo.exceptions.server.RefreshException;
import com.correo.modelo.server.ModelServer;
import com.correo.vista.server.windows.AdministracionCorreo;

public class ActionListenerView implements ActionListener{
	private AdministracionCorreo administracionCorreo;
	//private ModelServer model;

	public ActionListenerView(AdministracionCorreo administracionCorreo,
			ModelServer model) {
		//this.model = model;
		this.administracionCorreo = administracionCorreo;
	}
	@Override
	public void actionPerformed(ActionEvent e) {
		try {
			if(administracionCorreo.getOficceSelectionTabla()!=null){
				switch (administracionCorreo.getTab()) {
				case AdministracionCorreo.TAB_CASILLA_CORREO:
					System.out.println("view usuario de la base de datos");
					CasillaCorreoBean casilla = (CasillaCorreoBean) administracionCorreo.getCasillaCorreoSelectionTabla().get(0);
					administracionCorreo.getDialogCasillaCorreo(casilla,false,true).setVisible(true);
					break;
				case AdministracionCorreo.TAB_USUARIO_SOCKET:
					System.out.println("view usuario del servidor socket");
					break;
				case AdministracionCorreo.TAB_USUARIO:
					UserBean user = (UserBean) administracionCorreo.getUserSelectionTabla().get(0);
					administracionCorreo.getDialogUser(user,false,true).setVisible(true);
					System.out.println("view casilla correo");
					break;
				case AdministracionCorreo.TAB_OFICINA_CORREO:
					System.out.println("view oficina de correo");
					
						OfficeBean officeBean = (OfficeBean) administracionCorreo.getOficceSelectionTabla().get(0);
						administracionCorreo.getDialogOficce(officeBean,false,true).setVisible(true);
					
					break;
				case AdministracionCorreo.TAB_RELACION_CONFIANZA:
					System.out.println("view usuario de la base de datos");
					break;
	
				default:
					System.out.println("opcion incorrecta ALTA");
					break;
				}
			}
		} catch (RefreshException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		} catch (SQLException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		} catch (ClassNotFoundException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}	
		

	}

}
